package com.um.jdy.mp.report.service;
import com.um.jdy.mp.base.entity.vo.StationItemVO;
import com.um.jdy.mp.report.entity.vo.*;
import com.um.jdy.mp.report.enums.DateType;
import com.um.jdy.mp.report.enums.OrderBy;
import com.um.springboot.starter.entity.Page;

/**
 * @author 邓南辉
 * 日期 2023/2/28
 * 版权所有 广州优匠科技有限公司
 */
public interface DeviceDataService {

    /**
     * 查询站场列表
     * @param name
     * @return
     */
    Page<StationItemVO> getStationPage(int pageNo, int pageSize, String name);

    /**
     * 查询累计数据
     * @return
     */
    DeviceSummaryVO getDeviceSummary();


    /**
     * 设备使用率排名
     * @param pageNo
     * @param pageSize
     * @param data_type
     * @return
     */
    Page<DeviceDataItemVO> getDeviceRatePage(int pageNo, int pageSize, DateType data_type, String stationId, OrderBy orderBy);


    /**
     * 站场设备使用率排名
     * @param pageNo
     * @param pageSize
     * @param data_type
     * @return
     */
    Page<StationDataItemVO> getStationDeviceRatePage(int pageNo, int pageSize, DateType data_type, OrderBy orderBy);


    /**
     * 设备上下线统计
     * @param pageNo
     * @param pageSize
     * @param data_type
     * @return
     */
    Page<DeviceStatusItemVO> getDeviceOfflinePage(int pageNo, int pageSize, DateType data_type, String stationId);

    /**
     * 未产生订单设备
     * @param pageNo
     * @param pageSize
     * @param data_type
     * @return
     */
    Page<DeviceDataItemVO> getDeviceNoOrderPage(int pageNo, int pageSize, DateType data_type,String stationId);
}
